+2001-02-16 Havoc Pennington <hp@redhat.com>
+
+ * gtk/gtkvscrollbar.c (gtk_vscrollbar_trough_keys): use the visual
+ scroll steps.
+
+ * gtk/gtkvscale.c (gtk_vscale_trough_keys): use the visual scroll
+ steps, and add Ctrl-arrow shortcuts for paging visually as with
+ HScale, since Page Up and Page Down move logically.
+
+ * gtk/gtkenums.h (GtkScrollType): add GTK_SCROLL_STEP_UP,
+ GTK_SCROLL_STEP_DOWN, etc. for visual scroll directions
+
+ * gtk/gtkrange.c (gtk_range_key_press): handle the visual scroll
+ steps
+ (gtk_range_scroll): handle the visual steps
+
+ * gtk/gtklist.c (gtk_list_scroll_horizontal): handle the up/down
+ scroll steps
+
+ * gtk/gtkhscale.c (gtk_hscale_trough_keys): use the visual scroll
+ steps, not the logical ones.
+
+ * gtk/gtkclist.c (move_focus_row): handle the up/down scroll steps
+ (scroll_vertical): handle up/down steps
+
2001-02-19 Alexander Larsson <alexl@redhat.com>
* gdk/linux-fb/gdkimage-fb.c (gdk_image_new_bitmap):
* gtk/gtkliststore.c (gtk_list_store_set_valist):
fix G_VALUE_COLLECT() and G_VALUE_LCOPY() calls.
+>>>>>>> 1.1728
Fri Feb 16 17:49:59 2001 Jonathan Blandford <jrb@redhat.com>
* gtk/gtktreestore.[hc], gtk/gtkliststore.[ch]: removed
+2001-02-16 Havoc Pennington <hp@redhat.com>
+
+ * gtk/gtkvscrollbar.c (gtk_vscrollbar_trough_keys): use the visual
+ scroll steps.
+
+ * gtk/gtkvscale.c (gtk_vscale_trough_keys): use the visual scroll
+ steps, and add Ctrl-arrow shortcuts for paging visually as with
+ HScale, since Page Up and Page Down move logically.
+
+ * gtk/gtkenums.h (GtkScrollType): add GTK_SCROLL_STEP_UP,
+ GTK_SCROLL_STEP_DOWN, etc. for visual scroll directions
+
+ * gtk/gtkrange.c (gtk_range_key_press): handle the visual scroll
+ steps
+ (gtk_range_scroll): handle the visual steps
+
+ * gtk/gtklist.c (gtk_list_scroll_horizontal): handle the up/down
+ scroll steps
+
+ * gtk/gtkhscale.c (gtk_hscale_trough_keys): use the visual scroll
+ steps, not the logical ones.
+
+ * gtk/gtkclist.c (move_focus_row): handle the up/down scroll steps
+ (scroll_vertical): handle up/down steps
+
2001-02-19 Alexander Larsson <alexl@redhat.com>
* gdk/linux-fb/gdkimage-fb.c (gdk_image_new_bitmap):
* gtk/gtkliststore.c (gtk_list_store_set_valist):
fix G_VALUE_COLLECT() and G_VALUE_LCOPY() calls.
+>>>>>>> 1.1728
Fri Feb 16 17:49:59 2001 Jonathan Blandford <jrb@redhat.com>
* gtk/gtktreestore.[hc], gtk/gtkliststore.[ch]: removed
+2001-02-16 Havoc Pennington <hp@redhat.com>
+
+ * gtk/gtkvscrollbar.c (gtk_vscrollbar_trough_keys): use the visual
+ scroll steps.
+
+ * gtk/gtkvscale.c (gtk_vscale_trough_keys): use the visual scroll
+ steps, and add Ctrl-arrow shortcuts for paging visually as with
+ HScale, since Page Up and Page Down move logically.
+
+ * gtk/gtkenums.h (GtkScrollType): add GTK_SCROLL_STEP_UP,
+ GTK_SCROLL_STEP_DOWN, etc. for visual scroll directions
+
+ * gtk/gtkrange.c (gtk_range_key_press): handle the visual scroll
+ steps
+ (gtk_range_scroll): handle the visual steps
+
+ * gtk/gtklist.c (gtk_list_scroll_horizontal): handle the up/down
+ scroll steps
+
+ * gtk/gtkhscale.c (gtk_hscale_trough_keys): use the visual scroll
+ steps, not the logical ones.
+
+ * gtk/gtkclist.c (move_focus_row): handle the up/down scroll steps
+ (scroll_vertical): handle up/down steps
+
2001-02-19 Alexander Larsson <alexl@redhat.com>
* gdk/linux-fb/gdkimage-fb.c (gdk_image_new_bitmap):
* gtk/gtkliststore.c (gtk_list_store_set_valist):
fix G_VALUE_COLLECT() and G_VALUE_LCOPY() calls.
+>>>>>>> 1.1728
Fri Feb 16 17:49:59 2001 Jonathan Blandford <jrb@redhat.com>
* gtk/gtktreestore.[hc], gtk/gtkliststore.[ch]: removed
+2001-02-16 Havoc Pennington <hp@redhat.com>
+
+ * gtk/gtkvscrollbar.c (gtk_vscrollbar_trough_keys): use the visual
+ scroll steps.
+
+ * gtk/gtkvscale.c (gtk_vscale_trough_keys): use the visual scroll
+ steps, and add Ctrl-arrow shortcuts for paging visually as with
+ HScale, since Page Up and Page Down move logically.
+
+ * gtk/gtkenums.h (GtkScrollType): add GTK_SCROLL_STEP_UP,
+ GTK_SCROLL_STEP_DOWN, etc. for visual scroll directions
+
+ * gtk/gtkrange.c (gtk_range_key_press): handle the visual scroll
+ steps
+ (gtk_range_scroll): handle the visual steps
+
+ * gtk/gtklist.c (gtk_list_scroll_horizontal): handle the up/down
+ scroll steps
+
+ * gtk/gtkhscale.c (gtk_hscale_trough_keys): use the visual scroll
+ steps, not the logical ones.
+
+ * gtk/gtkclist.c (move_focus_row): handle the up/down scroll steps
+ (scroll_vertical): handle up/down steps
+
2001-02-19 Alexander Larsson <alexl@redhat.com>
* gdk/linux-fb/gdkimage-fb.c (gdk_image_new_bitmap):
* gtk/gtkliststore.c (gtk_list_store_set_valist):
fix G_VALUE_COLLECT() and G_VALUE_LCOPY() calls.
+>>>>>>> 1.1728
Fri Feb 16 17:49:59 2001 Jonathan Blandford <jrb@redhat.com>
* gtk/gtktreestore.[hc], gtk/gtkliststore.[ch]: removed
+2001-02-16 Havoc Pennington <hp@redhat.com>
+
+ * gtk/gtkvscrollbar.c (gtk_vscrollbar_trough_keys): use the visual
+ scroll steps.
+
+ * gtk/gtkvscale.c (gtk_vscale_trough_keys): use the visual scroll
+ steps, and add Ctrl-arrow shortcuts for paging visually as with
+ HScale, since Page Up and Page Down move logically.
+
+ * gtk/gtkenums.h (GtkScrollType): add GTK_SCROLL_STEP_UP,
+ GTK_SCROLL_STEP_DOWN, etc. for visual scroll directions
+
+ * gtk/gtkrange.c (gtk_range_key_press): handle the visual scroll
+ steps
+ (gtk_range_scroll): handle the visual steps
+
+ * gtk/gtklist.c (gtk_list_scroll_horizontal): handle the up/down
+ scroll steps
+
+ * gtk/gtkhscale.c (gtk_hscale_trough_keys): use the visual scroll
+ steps, not the logical ones.
+
+ * gtk/gtkclist.c (move_focus_row): handle the up/down scroll steps
+ (scroll_vertical): handle up/down steps
+
2001-02-19 Alexander Larsson <alexl@redhat.com>
* gdk/linux-fb/gdkimage-fb.c (gdk_image_new_bitmap):
* gtk/gtkliststore.c (gtk_list_store_set_valist):
fix G_VALUE_COLLECT() and G_VALUE_LCOPY() calls.
+>>>>>>> 1.1728
Fri Feb 16 17:49:59 2001 Jonathan Blandford <jrb@redhat.com>
* gtk/gtktreestore.[hc], gtk/gtkliststore.[ch]: removed
+2001-02-16 Havoc Pennington <hp@redhat.com>
+
+ * gtk/gtkvscrollbar.c (gtk_vscrollbar_trough_keys): use the visual
+ scroll steps.
+
+ * gtk/gtkvscale.c (gtk_vscale_trough_keys): use the visual scroll
+ steps, and add Ctrl-arrow shortcuts for paging visually as with
+ HScale, since Page Up and Page Down move logically.
+
+ * gtk/gtkenums.h (GtkScrollType): add GTK_SCROLL_STEP_UP,
+ GTK_SCROLL_STEP_DOWN, etc. for visual scroll directions
+
+ * gtk/gtkrange.c (gtk_range_key_press): handle the visual scroll
+ steps
+ (gtk_range_scroll): handle the visual steps
+
+ * gtk/gtklist.c (gtk_list_scroll_horizontal): handle the up/down
+ scroll steps
+
+ * gtk/gtkhscale.c (gtk_hscale_trough_keys): use the visual scroll
+ steps, not the logical ones.
+
+ * gtk/gtkclist.c (move_focus_row): handle the up/down scroll steps
+ (scroll_vertical): handle up/down steps
+
2001-02-19 Alexander Larsson <alexl@redhat.com>
* gdk/linux-fb/gdkimage-fb.c (gdk_image_new_bitmap):
* gtk/gtkliststore.c (gtk_list_store_set_valist):
fix G_VALUE_COLLECT() and G_VALUE_LCOPY() calls.
+>>>>>>> 1.1728
Fri Feb 16 17:49:59 2001 Jonathan Blandford <jrb@redhat.com>
* gtk/gtktreestore.[hc], gtk/gtkliststore.[ch]: removed
+2001-02-16 Havoc Pennington <hp@redhat.com>
+
+ * gtk/gtkvscrollbar.c (gtk_vscrollbar_trough_keys): use the visual
+ scroll steps.
+
+ * gtk/gtkvscale.c (gtk_vscale_trough_keys): use the visual scroll
+ steps, and add Ctrl-arrow shortcuts for paging visually as with
+ HScale, since Page Up and Page Down move logically.
+
+ * gtk/gtkenums.h (GtkScrollType): add GTK_SCROLL_STEP_UP,
+ GTK_SCROLL_STEP_DOWN, etc. for visual scroll directions
+
+ * gtk/gtkrange.c (gtk_range_key_press): handle the visual scroll
+ steps
+ (gtk_range_scroll): handle the visual steps
+
+ * gtk/gtklist.c (gtk_list_scroll_horizontal): handle the up/down
+ scroll steps
+
+ * gtk/gtkhscale.c (gtk_hscale_trough_keys): use the visual scroll
+ steps, not the logical ones.
+
+ * gtk/gtkclist.c (move_focus_row): handle the up/down scroll steps
+ (scroll_vertical): handle up/down steps
+
2001-02-19 Alexander Larsson <alexl@redhat.com>
* gdk/linux-fb/gdkimage-fb.c (gdk_image_new_bitmap):
* gtk/gtkliststore.c (gtk_list_store_set_valist):
fix G_VALUE_COLLECT() and G_VALUE_LCOPY() calls.
+>>>>>>> 1.1728
Fri Feb 16 17:49:59 2001 Jonathan Blandford <jrb@redhat.com>
* gtk/gtktreestore.[hc], gtk/gtkliststore.[ch]: removed
switch (scroll_type)
{
+ case GTK_SCROLL_STEP_UP:
case GTK_SCROLL_STEP_BACKWARD:
if (clist->focus_row <= 0)
return;
clist->focus_row--;
gtk_clist_draw_focus (widget);
break;
+
+ case GTK_SCROLL_STEP_DOWN:
case GTK_SCROLL_STEP_FORWARD:
if (clist->focus_row >= clist->rows - 1)
return;
clist->focus_row++;
gtk_clist_draw_focus (widget);
break;
+ case GTK_SCROLL_PAGE_UP:
case GTK_SCROLL_PAGE_BACKWARD:
if (clist->focus_row <= 0)
return;
(2 * (clist->row_height + CELL_SPACING)));
gtk_clist_draw_focus (widget);
break;
+ case GTK_SCROLL_PAGE_DOWN:
case GTK_SCROLL_PAGE_FORWARD:
if (clist->focus_row >= clist->rows - 1)
return;
clist->focus_row, -1, NULL);
switch (scroll_type)
{
+ case GTK_SCROLL_PAGE_UP:
+ case GTK_SCROLL_STEP_UP:
case GTK_SCROLL_STEP_BACKWARD:
case GTK_SCROLL_PAGE_BACKWARD:
gtk_clist_moveto (clist, clist->focus_row, -1, 0, 0);
break;
+ case GTK_SCROLL_PAGE_DOWN:
+ case GTK_SCROLL_STEP_DOWN:
case GTK_SCROLL_STEP_FORWARD:
case GTK_SCROLL_PAGE_FORWARD:
gtk_clist_moveto (clist, clist->focus_row, -1, 1, 0);
GTK_SCROLL_STEP_FORWARD,
GTK_SCROLL_PAGE_BACKWARD,
GTK_SCROLL_PAGE_FORWARD,
- GTK_SCROLL_JUMP
+ GTK_SCROLL_JUMP,
+ GTK_SCROLL_STEP_UP,
+ GTK_SCROLL_STEP_DOWN,
+ GTK_SCROLL_PAGE_UP,
+ GTK_SCROLL_PAGE_DOWN,
+ GTK_SCROLL_STEP_LEFT,
+ GTK_SCROLL_STEP_RIGHT,
+ GTK_SCROLL_PAGE_LEFT,
+ GTK_SCROLL_PAGE_RIGHT
} GtkScrollType;
/* list selection modes */
case GDK_Left:
return_val = TRUE;
if (key->state & GDK_CONTROL_MASK)
- *scroll = GTK_SCROLL_PAGE_BACKWARD;
+ *scroll = GTK_SCROLL_PAGE_LEFT;
else
- *scroll = GTK_SCROLL_STEP_BACKWARD;
+ *scroll = GTK_SCROLL_STEP_LEFT;
break;
case GDK_Right:
return_val = TRUE;
if (key->state & GDK_CONTROL_MASK)
- *scroll = GTK_SCROLL_PAGE_FORWARD;
+ *scroll = GTK_SCROLL_PAGE_RIGHT;
else
- *scroll = GTK_SCROLL_STEP_FORWARD;
+ *scroll = GTK_SCROLL_STEP_RIGHT;
break;
case GDK_Home:
return_val = TRUE;
switch (scroll_type)
{
+ case GTK_SCROLL_STEP_UP:
case GTK_SCROLL_STEP_BACKWARD:
adj->value = CLAMP (adj->value - adj->step_increment, adj->lower,
adj->upper - adj->page_size);
break;
+ case GTK_SCROLL_STEP_DOWN:
case GTK_SCROLL_STEP_FORWARD:
adj->value = CLAMP (adj->value + adj->step_increment, adj->lower,
adj->upper - adj->page_size);
break;
+ case GTK_SCROLL_PAGE_UP:
case GTK_SCROLL_PAGE_BACKWARD:
adj->value = CLAMP (adj->value - adj->page_increment, adj->lower,
adj->upper - adj->page_size);
break;
+ case GTK_SCROLL_PAGE_DOWN:
case GTK_SCROLL_PAGE_FORWARD:
adj->value = CLAMP (adj->value + adj->page_increment, adj->lower,
adj->upper - adj->page_size);
range = GTK_RANGE (widget);
return_val = FALSE;
-
+
if (RANGE_CLASS (range)->trough_keys)
return_val = (* RANGE_CLASS (range)->trough_keys) (range, event, &scroll, &pos);
if (scroll != GTK_SCROLL_NONE)
{
range->scroll_type = scroll;
+
gtk_range_scroll (range, -1);
if (range->old_value != range->adjustment->value)
{
gtk_signal_emit_by_name (GTK_OBJECT (range->adjustment), "value_changed");
switch (range->scroll_type)
{
+ case GTK_SCROLL_STEP_LEFT:
+ if (should_invert (range, TRUE))
+ gtk_range_draw_step_forw (range);
+ else
+ gtk_range_draw_step_back (range);
+ break;
+
+ case GTK_SCROLL_STEP_UP:
+ if (should_invert (range, FALSE))
+ gtk_range_draw_step_forw (range);
+ else
+ gtk_range_draw_step_back (range);
+ break;
+
+ case GTK_SCROLL_STEP_RIGHT:
+ if (should_invert (range, TRUE))
+ gtk_range_draw_step_back (range);
+ else
+ gtk_range_draw_step_forw (range);
+ break;
+
+ case GTK_SCROLL_STEP_DOWN:
+ if (should_invert (range, FALSE))
+ gtk_range_draw_step_back (range);
+ else
+ gtk_range_draw_step_forw (range);
+ break;
+
case GTK_SCROLL_STEP_BACKWARD:
gtk_range_draw_step_back (range);
break;
+
case GTK_SCROLL_STEP_FORWARD:
gtk_range_draw_step_forw (range);
break;
{
gfloat new_value;
gint return_val;
-
+ GtkScrollType scroll_type;
+
g_return_val_if_fail (GTK_IS_RANGE (range), FALSE);
new_value = range->adjustment->value;
return_val = TRUE;
- switch (range->scroll_type)
+ /* Translate visual to logical */
+
+ scroll_type = range->scroll_type;
+ switch (scroll_type)
+ {
+ case GTK_SCROLL_STEP_UP:
+ if (should_invert (range, FALSE))
+ scroll_type = GTK_SCROLL_STEP_FORWARD;
+ else
+ scroll_type = GTK_SCROLL_STEP_BACKWARD;
+ break;
+
+ case GTK_SCROLL_STEP_DOWN:
+ if (should_invert (range, FALSE))
+ scroll_type = GTK_SCROLL_STEP_BACKWARD;
+ else
+ scroll_type = GTK_SCROLL_STEP_FORWARD;
+ break;
+
+ case GTK_SCROLL_PAGE_UP:
+ if (should_invert (range, FALSE))
+ scroll_type = GTK_SCROLL_PAGE_FORWARD;
+ else
+ scroll_type = GTK_SCROLL_PAGE_BACKWARD;
+ break;
+
+ case GTK_SCROLL_PAGE_DOWN:
+ if (should_invert (range, FALSE))
+ scroll_type = GTK_SCROLL_PAGE_BACKWARD;
+ else
+ scroll_type = GTK_SCROLL_PAGE_FORWARD;
+ break;
+
+ case GTK_SCROLL_STEP_LEFT:
+ if (should_invert (range, TRUE))
+ scroll_type = GTK_SCROLL_STEP_FORWARD;
+ else
+ scroll_type = GTK_SCROLL_STEP_BACKWARD;
+ break;
+
+ case GTK_SCROLL_STEP_RIGHT:
+ if (should_invert (range, TRUE))
+ scroll_type = GTK_SCROLL_STEP_BACKWARD;
+ else
+ scroll_type = GTK_SCROLL_STEP_FORWARD;
+ break;
+
+ case GTK_SCROLL_PAGE_LEFT:
+ if (should_invert (range, TRUE))
+ scroll_type = GTK_SCROLL_PAGE_FORWARD;
+ else
+ scroll_type = GTK_SCROLL_PAGE_BACKWARD;
+ break;
+
+ case GTK_SCROLL_PAGE_RIGHT:
+ if (should_invert (range, TRUE))
+ scroll_type = GTK_SCROLL_PAGE_BACKWARD;
+ else
+ scroll_type = GTK_SCROLL_PAGE_FORWARD;
+ break;
+
+ default:
+ break;
+ }
+
+ switch (scroll_type)
{
case GTK_SCROLL_NONE:
break;
range->timer = 0;
}
break;
- }
+ case GTK_SCROLL_STEP_UP:
+ case GTK_SCROLL_STEP_DOWN:
+ case GTK_SCROLL_PAGE_UP:
+ case GTK_SCROLL_PAGE_DOWN:
+ case GTK_SCROLL_STEP_LEFT:
+ case GTK_SCROLL_STEP_RIGHT:
+ case GTK_SCROLL_PAGE_LEFT:
+ case GTK_SCROLL_PAGE_RIGHT:
+ g_assert_not_reached ();
+ break;
+
+ }
+
if (new_value != range->adjustment->value)
{
range->adjustment->value = new_value;
guint8 button;
gint8 digits;
guint policy : 2;
- guint scroll_type : 3;
+ guint scroll_type : 5;
guint in_child : 3;
guint click_child : 3;
guint need_timer : 1;
{
case GDK_Up:
return_val = TRUE;
- *scroll = GTK_SCROLL_STEP_BACKWARD;
+ if (key->state & GDK_CONTROL_MASK)
+ *scroll = GTK_SCROLL_PAGE_UP;
+ else
+ *scroll = GTK_SCROLL_STEP_UP;
break;
case GDK_Down:
return_val = TRUE;
- *scroll = GTK_SCROLL_STEP_FORWARD;
+ if (key->state & GDK_CONTROL_MASK)
+ *scroll = GTK_SCROLL_PAGE_DOWN;
+ else
+ *scroll = GTK_SCROLL_STEP_DOWN;
break;
case GDK_Page_Up:
return_val = TRUE;
{
case GDK_Up:
return_val = TRUE;
- *scroll = GTK_SCROLL_STEP_BACKWARD;
+ *scroll = GTK_SCROLL_STEP_UP;
break;
case GDK_Down:
return_val = TRUE;
- *scroll = GTK_SCROLL_STEP_FORWARD;
+ *scroll = GTK_SCROLL_STEP_DOWN;
break;
case GDK_Page_Up:
return_val = TRUE;